package com.kobeliu.entity;

import javax.management.remote.rmi._RMIConnection_Stub;

/**
 * leetcode 14
 *
 * 编写一个函数来查找字符串数组中的最长公共前缀。
 * 注意是前缀，这个问题就变得简单了
 *
 *
 * 如果不存在公共前缀，返回空字符串 ""。
 *
 *
 *
 * 示例 1：
 *
 * 输入：strs = ["flower","flow","flight"]
 * 输出："fl"
 *
 * 示例 2：
 *
 * 输入：strs = ["dog","racecar","car"]
 * 输出：""
 * 解释：输入不存在公共前缀。
 */

public class Demo_15_No14 {
    public static void main(String[] args) {
        String[] strs = {"flower","flow","flight"};
        System.out.println(longestCommonPrefix(strs));
    }

    public static String longestCommonPrefix(String[] strs) {
        String temp = "";
        if(strs.length==0){
            return "";
        }
        if(strs.length==1){
            return strs[0];
        }
        temp = strs[0];

        for (int i = 1; i < strs.length; i++) {
            //遍历 strs
            int j = 0;
            for (;j < temp.length() && j < strs[i].length(); j++) {
                //遍历单个str 如有一样的字符就记录
                if(temp.charAt(j)!=strs[i].charAt(j)){
                    break;
                }
            }
            temp = temp.substring(0,j);
            if("".equals(temp)){
                return temp;
            }
        }
        return temp;
    }
}
